# 拉取nodejs基础镜像
FROM node:20.17.0 as node-web
#设置工作目录
WORKDIR /app
## 复制项目依赖到镜像中
COPY package.json ./
# 安装依赖包
RUN npm install --registry=https://registry.npmmirror.com
# 复制项目文件到镜像中
COPY . .
# 构建项目
RUN npm run build

# 拉取nginx基础镜像
FROM nginx:1.21.1
# 维护者信息
MAINTAINER haohai
# 将node打包好的dist文件中的内容复制到 `/usr/share/nginx/html/` 这个目录下面
COPY --from=node-web /app/dist/  /usr/share/nginx/html/
# 用本地配置文件来替换nginx镜像里的默认配置
COPY Docker/nginx/nginx.conf /etc/nginx/nginx.conf
# 对外暴漏的端口号
# [注：EXPOSE指令只是声明容器运行时提供的服务端口，给读者看有哪些端口，在运行时只会开启程序自身的端口！！]
EXPOSE 80
# 启动nginx容器
CMD ["nginx", "-g", "daemon off;"]
